#include <stdio.h>

int global = 0;

int rect(int a, int b){
    static int count = 0;
    count++;
    global++;
    return a*b;
}
int quadrate(int a){
    static int count = 0;
    count++;
    global++;
    int s = rect(a,a);
    return s;
}

int main(){
    int a = 3;
    int b =4;
    int *pa ;
    pa = &a;
    printf("a=:%d\n",*pa);
    int *pb = &b;
    int *pglobal = &global;
    int (*pquadrate)(int tmp)= &quadrate;
    int s = quadrate(a);
    int t = (*pquadrate)(a);
    printf("%d\n",s);
    printf("%d\n",t);
    printf("-------------华丽的分割线-----------\n");
    int (*x)(int tmp) ;
    x = &quadrate;
    printf("%d\n",(*x)(2));
    return 0;
}